package com.xqb.modules.domain.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.xqb.common.annotation.Excel;
import com.xqb.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;

/**
 * 课程分类对象 les_category
 * 
 * @author xqb
 * @date 2024-10-14
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class LesCategory extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 课程分类id */
    private Long id;

    /**
     * 分类名称，name转成label方便前端
     */
    @Excel(name = "分类名称")
    private String name;

    /** 父分类id，一级分类父id为0 */
    @Excel(name = "父分类id，一级分类父id为0")
    private Long parentId;

    /** 分类级别，1,2,3：代表一级分类，二级分类，三级分类 */
    @Excel(name = "分类级别，1,2,3：代表一级分类，二级分类，三级分类")
    private Long level;

    /** 同级目录优先级，数字越小优先级越高，可以重复 */
    @Excel(name = "同级目录优先级，数字越小优先级越高，可以重复")
    private Long priority;

    /** 课程分类状态，1：正常，2：禁用 */
    @Excel(name = "课程分类状态，1：正常，2：禁用")
    private Long status;

    /** 逻辑删除 */
    @TableLogic(value = "0",delval = "1")
    private Long delFlag;

    /** 子分类 */
    @TableField(exist = false)
    private List<LesCategory> children;
}
